package com.zhaohanlin.start;

import org.junit.Test;
import org.junit.rules.Stopwatch;

import java.time.Year;
import java.util.Random;

/**
 * @author zhaohanlin
 */
public class TestTwo {

    /**
     * while先判断后循环
     * 我们一般在不知道要循环多少次的情况下使用while。
     */
    @Test
    public void whileStructure() {
        int i = 1;
        while (i <= 10) {
            System.out.println(i);
            i++;

        }
    }

    /**
     * do while先循环后判断
     * 如果我们知道至少需要执行一次循环的时候，就可以使用dowhile。
     */
    @Test
    public void doWhileStructure() {
        int i = 100;
        do {
            System.out.println(i);
            i++;
        } while (i <= 10);
    }

    /**
     * for 知起止
     * 如果我们知道要循环多少次，就可以使用for。
     */
    @Test
    public void forStructure() {
        // fori + tab
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);

        }
    }

    /**
     * `continue`：立即结束本次循环，并开启下一次循环。
     */
    @Test
    public void continueWord() {
        for (int i = 0; i < 10; i++) {
            if (i == 3) {
                break;
            }
            System.out.println("循环到了" + i);
        }
    }


    /**
     * 判断100-200之间有没有能被23整除的数。
     */
    @Test
    public void breakWord() {
        String result = "没有";
        for (int i = 100; i < 201; i++) {
            // 说明可以被整
            if (i % 23 == 0) {
                result = "有";
                break;
            }
        }
        System.out.println(result);
    }

    @Test
    public void Test1() {
        int x = 0;
        for (int i = 100; i < 200; i++) {
            if (i % 23 == 0) {
                x++;
                System.out.println(i);
            }
        }
        System.out.println("有" + x + "个数可以被23整除");
    }

    @Test
    public void Test2() {
        int x = 0, i = 0;
        while (i < 600000) {
            x++;
            i += 1000;
        }
        System.out.println("需要献血" + x++ + "次");
    }

    @Test
    public void Test3() {
        int i = 13;
        int x = 36;
        doWhileStructure();
    }

    @Test
    public void test49() {
        int xbAge = 13, dbAge = 36;
        int years = 0;
        while (2 * xbAge != dbAge) {
            xbAge++;
            dbAge++;
            years++;
        }
        System.out.println(years + "年后大兵的年龄是小兵的2倍");
    }

    @Test
    public void Test4() {
        double money = 10000;
        for (int year = 1; year <= 5; year++) {
            money = money + money * 0.003;
        }
        System.out.println(money);
    }

    @Test
    public void c() {
        int c = 0;
        for (int i = 0; i <= 135; i += 5) {
            c++;
        }
        System.out.println(c);
    }

    @Test
    public void Test9() {
        for (int i = 1; i < 10; i++) {
            System.out.println();
            for (int j = 1; j < 10; j++) {
                if (j <= i) {
                    System.out.printf("%d*%d=%d\t", j, i, j * i);
                }



            }
        }
    }
}















